home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 88
/
088.d81
/
star masters
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
31KB
|
715 lines
5 dv=peek(186):ifdv<8thendv=8
10 poke53280,0:poke53281,0:poke53265,11:goto2500
20 rem --- mix arrows ---
30 a=rnd(1)*36:b=int(rnd(1)*2)
40 ifpeek(m(a))=n(b)thenb=-b+1
50 pokecx+m(a),c(b):pokem(a),n(b)
60 return
70 rem --- game screen ---
80 print"[147][158] s t a r m a s t e r s"
90 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][157][148][163]"
100 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][157][148][164]"
110 printtab(31)"[155]question"
120 printtab(32)"[152]number":gosub180
130 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][157][148][163]"
140 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][157][148][164]"
150 print" [159]your score : 00000 [154]high score : "h$""
160 return
170 rem --- print question number ---
180 poke214,14:print"":a$=str$(qn)
190 a$="0"+right$(a$,len(a$)-1)
200 printtab(34)right$(a$,2):return
210 rem --- print question ---
220 pokes+5,0:pokes+6,240:pokes+1,34:pokes,75:pokes+12,0
230 pokes+13,240:pokes+8,14:pokes+7,24
240 poke214,3:print:print" [150]";
250 a$=q$(an):fori=1tolen(a$)
260 ifmid$(a$,i,1)="+"thenprint:print" ";:goto290
270 print"[156][193][157][150]";:pokes+4,17:pokes+11,17:pokes+4,16:pokes+11,16
280 printmid$(a$,i,1);
290 next:return
300 rem --- print choices ---
310 poke214,7:print:fori=1to10
320 print" "i-1"[157][157][157][155][195][196] "mid$(c$,i,1)ch$(i)
330 next:return
340 rem --- response prompt ---
350 poke214,19:print
360 print" [158]your answer is: [156]press [f7[156]] to quit"
370 return
380 rem --- bonus prompt ---
390 pokebd,4:poke214,19:print
400 print" bonus if you answer next question!"
410 forde=1to3000:next
420 print"[145]"sp$:return
430 rem --- quit ---
440 poke214,19:print:poke198,0
450 print" [153]are you sure you want to quit? [y[153]/n[153]] "
460 getke$:ifke$="n"thengosub350:goto1890
470 ifke$<>"y"then460
480 pokebd,0:goto2140
490 rem --- print score ---
500 poke214,22:print
510 a$=str$(sc):a$=right$(a$,len(a$)-1)
520 printtab(19-len(a$))""a$
530 return
540 rem --- clear screen lines ---
550 poke214,3:print
560 printsp$:printsp$""
570 fori=0to9:printleft$(sp$,30):next
580 print""sp$:return
590 rem -- highlight correct answer --
600 poke214,6+n%:printmid$(c$,n%,1)
610 printtab(4)"[167]"an$(an)"[146]_"
620 forde=1to3000:next:return
630 rem --- print bonus points ---
640 printtab(12)"[150] "
650 printtab(12)" "
660 printtab(12)" "
670 printtab(12)" "
680 printtab(12)" ":return
690 printtab(14)"[150] "
700 printtab(14)" "
710 printtab(14)" "
720 printtab(14)" "
730 printtab(14)" ":return
740 printtab(14)"[150] "
750 printtab(14)" "
760 printtab(14)" "
770 printtab(14)" "
780 printtab(14)" ":return
790 printtab(14)"[150] "
800 printtab(14)" "
810 printtab(14)" "
820 printtab(14)" "
830 printtab(14)" ":return
840 printtab(14)"[150] "
850 printtab(14)" "
860 printtab(14)" "
870 printtab(14)" "
880 printtab(14)" ":return
890 rem --- clear sid chip ---
900 fori=stos+24:pokei,.:next:pokes+24,15:return
910 rem --- beep ---
920 pokes+1,50:pokes+6,240:pokes+4,17
930 forde=1to300:next:pokes+4,0:return
940 rem --- buzzer ---
950 pokes+6,210:pokes+5,5:pokes+4,33
960 fori=1to12:pokes+1,i:next
970 forde=1to250:next:pokes+4,0:return
980 rem --- correct sound ---
990 pokes+6,225:pokes+4,17
1000 fori=1to7:forde=1to180step20
1010 pokes+1,de:next:next
1020 pokes+4,0:return
1030 rem --- bonus 1000 ---
1040 pokes+6,240:pokes+4,17
1050 fori=1to14:forde=1to185step10
1060 pokes+1,de:next:pokebd,i:next
1070 pokes+4,0:return
1080 rem --- high score ---
1090 fori=1to3:a=9:forj=1to3
1100 pokes+5,62:pokes+6,48:pokes+24,15
1110 pokes+1,a:pokes,54
1120 pokes+4,33:forde=1to108:next
1130 pokes+4,32:a=a+3
1140 forde=1to10:next:next:next:return
1150 rem --- check drive ---
1160 open15,dv,15,"r0:"+f$+"="+f$:input#15,er:close15
1170 return
1180 rem --- save scores ---
1190 open15,dv,15,"s0:masters.high":close15
1200 open8,dv,8,"masters.high,p,w"
1210 fori=0to2:print#8,na$(i):print#8,sc(i):next
1220 close8:return
1230 rem --- a master ---
1240 printtab(x)mid$(c$,i+1,1)left$(m$,11)mid$(c$,i+1,1)right$(m$,156):return
1250 rem --- bonus drop ---
1260 print"[147]"
1270 fori=0to35:b=rnd(1)*2
1280 pokecx+m(i),c(b):pokem(i),n(b)
1290 next:poke214,16:print
1300 print" [150][164][164][164] [156][164][164][164] [158][164][164][164] [164][164][164] [164][164][164] [164][164][164] [158][164][164][164] [156][164][164][164] [150][164][164][164]"
1310 print" [150][165] [167] [156][165] [167] [158][165] [167] [165] [167] [165] [167] [165] [167] [158][165] [167] [156][165] [167] [150][165] [167]"
1320 print" [150][207][183][208] [156][207][183][208] [158][207][183][208] [207][183][208] [207][183][208] [207][183][208] [158][207][183][208] [156][207][183][208] [150][207][183][208]"
1330 print" [150][180]7[150][170] [156][180]5[156][170] [158][165]3[158][167] [165]2[167] [165]1[167] [165]2[167] [158][165]3[158][167] [156][165]5[156][167] [150][165]7[150][167]"
1340 print" [150][165]5[150][170] [156][180]0[156][170] [158][165]5[158][167] [165]0[167] [165]0[167] [165]0[167] [158][165]5[158][167] [156][165]0[156][167] [150][165]5[150][167]"
1350 print" [150][165]0[150][170] [156][180]0[156][167] [158][165]0[158][167] [165]0[167] [165]0[167] [165]0[167] [158][165]0[158][167] [156][165]0[156][167] [150][165]0[150][167]"
1360 print" [150][204][175][186] [156][204][175][186] [158][204][175][186] [204][175][186] [165]0[167] [204][175][186] [158][204][175][186] [156][204][175][186] [150][204][175][186]"spc(21)"[204][175][186]"
1370 print" go for it!"
1380 printtab(28)"[156]press [f1[156]]"
1390 printtab(27)"to drop ball[158]"
1400 print" get that":print" big bonus!"
1410 l=50195:cl=55315:pokecl,1:pokel,81
1420 pokes+6,200:poke198,0
1430 gosub30:pokes+4,17:pokes+1,a+4
1440 gosub30:pokes+4,16
1450 getke$:ifke$<>"[133]"then1430
1460 x=32:y=0:m=40
1470 fori=18to1step-1:gosub30
1480 nl=l+m:nc=cl+m:pokel,x:pokecl,y
1490 x=peek(nl):y=peek(nc)
1500 pokenc,1:pokenl,81:l=nl:cl=nc
1510 ifx=n(0)thenm=39
1520 ifx=n(1)thenm=41
1530 pokes+1,i*10:pokes+4,17
1540 forde=1to100:next:next
1550 pokel,32:pokes+4,0
1560 ifl=50915thenpt=1000:gosub1040:x=1
1570 ifl=50899orl=50931thenpt=750:x=2
1580 ifl=50903orl=50927thenpt=500:x=3
1590 ifl=50907orl=50923thenpt=350:x=4
1600 ifl=50911orl=50919thenpt=200:x=5
1610 forde=1to1000:next
1620 gosub80:poke214,8:print
1630 printtab(17)"[153]bonus"
1640 onxgosub640,690,740,790,840
1650 gosub500:forde=1to2000:next
1660 fori=10toptstep10
1670 sc=sc+10:gosub500
1680 pokes+4,33:pokes+1,i/10:pokebd,i/4
1690 forde=1to10:next:pokes+4,32:next
1700 gosub990:return
1710 rem --- random question ---
1720 r%=rnd(1)*250+1:fl=0:fori=1toqn
1730 ifr%=uq(i)thenfl=1:i=qn
1740 next:ifflthen1720
1750 uq(qn)=r%:an=r%:pt=100
1760 ifbn=4thengosub920:gosub390
1770 rem --- random choices ---
1780 fori=1to10:ch$(i)="":next
1790 n%=(rnd(1)*10+1):ch$(n%)=an$(an)
1800 fori=1to10:ifch$(i)<>""then1850
1810 r%=rnd(1)*250+1:ifan$(r%)=an$(an)then1810
1820 fl=0:forj=1toi:ifch$(j)=an$(r%)thenfl=1
1830 next:ifflthen1810
1840 ch$(i)=an$(r%)
1850 next
1860 gosub180:gosub220:gosub310
1870 gosub350:poke198,0
1880 rem --- get guess ---
1890 getke$:ifke$<"0"orke$>"9"andke$<>"[136]"then1890
1900 ifke$="[136]"then440
1910 qu=val(ke$)+1
1915 poke214,19:print:pr